Geospatial applications are one class of computing applications that computer systems are useful for. A geospatial application generally refers to any computer system that integrates, analyzes, stores, shares, or displays data that is linked to a geographic location.
A geospatial application may include functionality for displaying, on a computer display device, a two-dimensional map of the curved surface of the Earth. The map may be created from aerial photography, satellite imagery, and the like. The geospatial application may create the map using a map projection that projects geographic coordinates (e.g., latitude and longitude) to planar coordinates (e.g., Cartesian coordinates).
One class of map projection is a cylindrical projection. A cylindrical projection forms a rectangular map that typically has lines of latitude and lines of longitude that intersect at right angles and either the lines of latitude or the lines of longitude are equidistant. With some cylindrical projections, a meridian is chosen where the cylindrical projection is split to form the right-most edge and left-most edge of the map. By convention, this “splitting meridian” is often selected as the 180th meridian at 180 degrees East longitude (+180° E) and 180 degrees West longitude (−180° W).
In addition to displaying maps, a geospatial application may allow a user to express a geographic feature on the surface of the Earth as a geospatial geometry. One type of geospatial geometry useful for expressing geographic features is a geodetic polygon. A geodetic polygon is a particular area of the Earth's surface. For example, a geodetic polygon may be used to express the perimeter and area of physical geographic features such as lakes, parks, buildings, towns, and the like and conceptual geographic features such as an area of market influence or an area seen by a satellite over a period of time.
A geodetic polygon can be defined that straddles a splitting meridian. In general, a geodetic polygon straddles a splitting meridian if the splitting meridian intersects a geodesic of the geodetic polygon. Drawing a straddling polygon on a cylindrical projection of the Earth is problematic. This is because a cylindrical projection has edges that intersect the straddling polygon along the splitting meridian. One possible approach to drawing a straddling polygon is to require the user to split the straddling polygon into two or more non-straddling geodetic polygons along the splitting meridian. A geospatial application adopting this approach would reject a straddling polygon as straddling a splitting meridian whereupon the user would define two non-straddling geodetic polygons along the splitting meridian as a substitute for the straddling polygon. However, this approach requiring the user to define multiple substitute polygons for a single straddling polygon is awkward and inconvenient. Further, the geodesics of the substitute polygons that run along the splitting meridian will be drawn to indicate the perimeters of the substitute polygons. Thus, the substitute polygons, when drawn on a map, do not visually present an accurate representation of the perimeter and area of the straddling polygon. Still further, certain geospatial queries such as buffering operations may have to be performed multiple times, for example, once for each of the substitute polygons.
The approaches described in this section are approaches that could be pursued, but not necessarily approaches that have been previously conceived or pursued. Therefore, unless otherwise indicated, it should not be assumed that any of the approaches described in this section qualify as prior art merely by virtue of their inclusion in this section.